/**
 * 环境变量配置
 * 提供统一的方式获取环境变量
 */

// 定义环境类型
type EnvType = 'development' | 'production';

// 从环境变量中获取环境，默认为development
export const GetEnv = (process.env.REACT_APP_ENV || 'development') as EnvType;

// 判断是否为生产环境
export const isProd = GetEnv === 'production';

// 判断是否为开发环境
export const isDev = GetEnv === 'development';

// 配置API基础URL
export const API_BASE_URL = '/api';

// 环境名称显示
const getEnvName = () => {
  switch (GetEnv) {
    case 'production':
      return 'TellTech生产环境';
    case 'development':
    default:
      return 'TellTech开发环境';
  }
};

// 配置对象
export const envConfig = {
  // 应用名称
  appName: process.env.REACT_APP_ENV_NAME,
  // 环境
  env: GetEnv,
  // 是否为生产环境
  isProd,
  // 是否为开发环境
  isDev,
  // API基础URL
  apiBaseUrl: '/api',
};

// 在开发环境下打印环境信息
if (isDev) {
  console.log(`[EnvConfig] 当前环境: ${GetEnv}, API地址: ${API_BASE_URL}`);
}

// 导出配置对象作为默认导出
export default envConfig; 